(1) Field of the Invention
The present invention relates to a programmable logic device, and a configuration apparatus and a configuration method for the programmable logic device. In particular, the present invention relates to a technique to change only the function of the intended logic element without interfering with other logic elements in operation among logic elements of the programmable logic device.
(2) Description of the Related Art
In recent years, programmable logic devices, such as FPGA (Field programmable Gate Array), are widely spread. A programmable logic device is an integrated circuit that includes logic elements. The user can make the programmable logic device perform a desired function by changing the function of each logic element or changing the connection condition among the logic elements. The following describes how to change the function of the programmable logic device, by taking a conventional programmable logic device for instance.
FIG. 1 shows the structure of a conventional programmable logic device. In this example, a programmable logic device 401 includes sixteen logic elements. Each logic element stores a piece of configuration information, which defines the function of the logic element, in a storing unit 41 of each logic element. Each logic element realizes the function according to the stored piece of the configuration information. The user can change the function of each element by rewriting the configuration information.
Each piece of the configuration information is sequentially input from a configuration apparatus 402, and shifted by each storing unit 41 so that the piece of the configuration information is transferred to a targeted logic element (e.g. U.S. Pat. No. 5,394,031).
Meanwhile, in recent years, equipment in which the programmable logic device is incorporated has been downsized. Accordingly, there is a demand for an efficient use of the programmable logic device such that the programmable logic device contributes to the downsizing of the equipment.
To use the programmable logic device as efficiently as possible, it is necessary to map as many processes as possible to each logic element (to improve the spatial efficiency), and to constantly use the logic elements, which is the resources of the programmable logic device (to improve the temporal efficiency). For instance, it is possible to improve the spatial efficiency by allocating a plurality of processes, which are to be performed in parallel, to one programmable logic device. It is also possible to improve the temporal efficiency by allocating a subsequent process to the programmable logic device right after the programmable logic device finishes one of the processes.
To realize such improvement, it is required to provide a programmable logic device in which the function of only an intended logic element can be changed without interfering with other logic elements in operation.
However, in the conventional programmable logic device, all the logic elements have to rewrite and shift the configuration information stored therein to transfer a desired piece of the configuration information to a targeted logic element. Therefore, the functions of all the logic elements are inevitably changed even if the user tries to change the function of only one of the logic elements.